Release 10.1A: OpenEdge Development:
Progress Dynamics Basic Development


Introduction

One of the basic principles of the Progress Dynamics framework is to let designers and developers create reusable behavior for different kinds of objects. The existence of standard objects such as SDOs, browsers, viewers, and toolbars is a prime example. Each of these object types has a large amount of built-in functionality that is inherited by all objects of that type without any additional programming or testing on your part.

Building dynamic windows in Progress Dynamics also follows this behavior. The expectation is that you will use most dynamic visual layouts in a number of different situations, whether what is being created is a simple browse window (which could apply to many different tables), a table maintenance window (again, for many tables), or a parent-child relationship between browsers in a window or between pages of a tab folder.

The layout can represent a single-page window (one with no tab folder) or a page for a tab folder window with multiple pages. In the latter case, you can later assemble a particular window from multiple individual page layouts, one for each page in the completed window.

In addition to specifying what objects appear in a window and in what relative positions, you can specify exactly what links are required to make the window or page function properly. They are then reproduced automatically for the actual objects in each window built from the template. In this way, no one but the template designer needs to understand the details of how the links operate and what links are required. Once the proper links are established, they will be created consistently for every window or page of that type. Thus, the template mechanism also helps assure consistency and correctness of windows in an application, without repeating details such as links and positions each time you build a new window of the type.

The Container Builder is designed to build Progress Dynamics containers while managing the layout of objects and the links between them. A container is saved in the Progress Dynamics Object Repository as a set of related records, describing the container itself, the objects it contains, their links, and so forth. A flag in the Repository, displayed as a checkbox on the Container Builder, identifies the container as a template so that you can select it later as the basis for building a window or tab folder page. There are also Repository records with the same template flag set for the various types of contained objects that you can use as template objects in a container. The flag to identify this is the template_smartobject field in the ryc_smartobject table. There is no specific tool for defining new template objects, but setting this flag for a representative record will designate it as the template for that type. The standard Progress Dynamics Repository contains predefined template objects for the kinds of objects you are likely to need.


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095